﻿namespace HxMSimulator
{
    public static class PacketGenerator
    {
        #region ValidPacket
        private static readonly byte[] ValidPacket = new byte[]
                            {
                                0x02,  // 0 STX
                                0x26,  // 1 MessageID
                                0x37,  // 2 DLC
                                0x20,  // 3
                                0x20,  // 4
                                0x20,  // 5
                                0x20,  // 6
                                0x20,  // 7
                                0x20,  // 8
                                0x20,  // 9
                                0x20,  // 10
                                0x5A,  // 11 Battery Charge 90
                                0x5A,  // 12 Heart Rate 90
                                0x5A,  // 13 Heart Beat Number 90
                                0x20,  // 14
                                0x20,  // 15
                                0x20,  // 16
                                0x20,  // 17
                                0x20,  // 18
                                0x20,  // 19
                                0x20,  // 20
                                0x20,  // 21
                                0x20,  // 22
                                0x20,  // 23
                                0x20,  // 24
                                0x20,  // 25
                                0x20,  // 26
                                0x20,  // 27
                                0x20,  // 28
                                0x20,  // 29
                                0x20,  // 30
                                0x20,  // 31
                                0x20,  // 32
                                0x20,  // 33
                                0x20,  // 34
                                0x20,  // 35
                                0x20,  // 36
                                0x20,  // 37
                                0x20,  // 38
                                0x20,  // 39
                                0x20,  // 40
                                0x20,  // 41
                                0x20,  // 42
                                0x20,  // 43
                                0x20,  // 44
                                0x20,  // 45
                                0x20,  // 46
                                0x20,  // 47
                                0x20,  // 48
                                0x20,  // 49
                                0x5A,  // 50 Distance 90
                                0x00,  // 51
                                0x5A,  // 52 Instantenious Speed 90
                                0x00,  // 53 
                                0x5A,  // 54  Strides 90
                                0x00,  // 55 
                                0x20,  // 56
                                0x20,  // 57 
                                0x20,  // 58
                                0x03   // 59 ETX
                            };
        #endregion

        public static byte[] GetValidPacket()
        {
            CRCCalculator.SetCRC(ValidPacket);
            return ValidPacket;
        }
    }
}
